116 research outputs found

    Feature placement algorithms for high-variability applications in cloud environments

    Get PDF
    While the use of cloud computing is on the rise, many obstacles to its adoption remain. One of the weaknesses of current cloud offerings is the difficulty of developing highly customizable applications while retaining the increased scalability and lower cost offered by the multi-tenant nature of cloud applications. In this paper we describe a Software Product Line Engineering (SPLE) approach to the modelling and deployment of customizable Software as a Service (SaaS) applications. Afterwards we define a formal feature placement problem to manage these applications, and compare several heuristic approaches to solve the problem. The scalability and performance of the algorithms is investigated in detail. Our experiments show that the heuristics scale and perform well for systems with a reasonable load

    Cost-effective feature placement of customizable multi-tenant applications in the cloud

    Get PDF
    Cloud computing technologies can be used to more flexibly provision application resources. By exploiting multi-tenancy, instances can be shared between users, lowering the cost of providing applications. A weakness of current cloud offerings however, is the difficulty of creating customizable applications that retain these advantages. In this article, we define a feature-based cloud resource management model, making use of Software Product Line Engineering techniques, where applications are composed of feature instances using a service-oriented architecture. We focus on how resources can be allocated in a cost-effective way within this model, a problem which we refer to as the feature placement problem. A formal description of this problem, that can be used to allocate resources in a cost-effective way, is provided. We take both the cost of failure to place features, and the cost of using servers into account, making it possible to take energy costs or the cost of public cloud infrastructure into consideration during the placement calculation. Four algorithms that can be used to solve the feature placement problem are defined. We evaluate the algorithm solutions, comparing them with the optimal solution determined using an integer linear problem solver, and evaluating the execution times of the algorithms, making use of both generated inputs and a use case based on three applications. We show that, using our approach a higher degree of multi-tenancy can be achieved, and that for the considered scenarios, taking the relationships between features into account and using application-oriented placement performs 25-40 % better than a purely feature-oriented placement

    K8-Scalar: a workbench to compare autoscalers for container-orchestrated services (Artifact)

    Get PDF
    This artifact is an easy-to-use and extensible workbench exemplar, named K8-Scalar, which allows researchers to implement and evaluate different self-adaptive approaches to autoscaling container-orchestrated services. The workbench is based on Docker, a popular technology for easing the deployment of containerized software that also has been positioned as an enabler for reproducible research. The workbench also relies on a container orchestration framework: Kubernetes (K8s), the de-facto industry standard for orchestration and monitoring of elastically scalable container-based services. Finally, it integrates and extends Scalar, a generic testbed for evaluating the scalability of large-scale systems with support for evaluating the performance of autoscalers for database clusters. The associated scholarly paper presents (i) the architecture and implementation of K8-Scalar and how a particular autoscaler can be plugged in, (ii) sketches the design of a Riemann-based autoscaler for database clusters, (iii) illustrates how to design, setup and analyze a series of experiments to configure and evaluate the performance of this autoscaler for a particular database (i.e., Cassandra) and a particular workload type, (iv) and validates the effectiveness of K8-scalar as a workbench for accurately comparing the performance of different auto-scaling strategies. Future work includes extending K8-Scalar with an improved research data management repository

    Dynamic and context-sensitive composition in distributed systems

    No full text
    nrpages: 318+58+xxiistatus: publishe

    Towards an Aspect-Oriented Architecture for Self-Adaptive Frameworks

    No full text
    Self-adaptive systems are systems that are able to autonomously adapt to changing circumstances without human intervention. Typically, these systems are often designed as a framework that defines a generic architecture which can be reused across multiple applications. In this paper we study and compare two prominent examples of self-adaptive frameworks. We study the applicability of aspect-oriented programming (AOP) to see where and how AOP technology can provide an interesting alternative for implementing parts of the architecture of self-adaptive frameworks. Subsequently, we present our initial ideas towards an aspectoriented architecture for self-adaptive frameworks. 1

    Desired tool support for mining documentation on GitHub

    No full text
    This talk was part of the panel on AI & Variability. In this panel talk, I have presented a case study about the lack of tool support for mining features from documentation on GitHub and desired (AI-based) capabilities for such tools.status: publishe

    Towards an aspect-oriented architecture for self-adaptive frameworks

    No full text
    Self-adaptive systems are systems that are able to autono\-mously adapt to changing circumstances without human intervention. Typically, these systems are often designed as a framework that defines a generic architecture which can be reused across multiple applications. In this paper we study and compare two prominent examples of self-adaptive frameworks. We study the applicability of aspect-oriented programming (AOP) to see where and how AOP technology can provide an interesting alternative for implementing parts of the architecture of self-adaptive frameworks. Subsequently, we present our initial ideas towards an aspect-oriented architecture for self-adaptive frameworks.status: publishe
    • …
    corecore